package net.tv90.auth.aop.annotation;

import java.lang.annotation.*;

/**
 * 接口下的资源需要登录才能访问，请求头中 Authorization 必须携带有效 token
 * token中包含了用户名和密码，存储在用户浏览器中，token采用 TokenUtils 中的加密方式
 * 以下情况的请求会被拦截
 * 1. token未携带，或不合法，或解析失败
 * 2. token成功解析，但用户未登录（token过期），即Redis中不存在用户
 * 3. token成功解析且用户已经登录（Redis中存在该用户），但Redis中存的token与前端传过来的不一致
 *
 * @author TV90
 */
@Documented
@Target({ElementType.METHOD, ElementType.TYPE})
@Retention(RetentionPolicy.RUNTIME)
public @interface NeedVerify {
}
